<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>
    <div id="demo">{{ fullName }}</div>
    <script src="../js/vue.js" charset="utf-8"></script>
    <script type="text/javascript">
    var vm = new Vue({
        el: '#demo',
        data: {
            firstName: 'Foo',
            lastName: 'Bar',
            fullName: 'Foo Bar'
        },
        // watch: {
        //     firstName: function (val) {
        //         this.fullName = val + ' ' + this.lastName
        //     },
        //     lastName: function (val) {
        //         this.fullName = this.firstName + ' ' + val
        //     }
        // }
        computed: {
            fullName: {
                get: function () {
                    return this.firstName + ' ' + this.lastName;
                },
                set: function (newValue) {
                    var names = newValue.split(' ');
                    this.firstName = names[0];
                    this.lastName = names[names.length-1];
                }
            }
        }

    })
    </script>
</body>
</html>
